using System;
using System.Collections;
using System.Xml.Serialization;

using GURUCORE.Framework.Core.Data;

namespace GURUCORE.Portal.Service.Business.DTO
{
    /// <summary>
    /// Summary for ActiveSessionDTO.
    /// </summary>
    [Serializable]
    [System.Diagnostics.DebuggerStepThrough]
    [PersistenceClass("Portal_ActiveSession", "ActiveSessionID", true)]
    public sealed partial class ActiveSessionDTO : DTOBase
    {
        public const string ACTIVESESSIONID_FLD = "ActiveSessionID";
        public const string SESSIONGUID_FLD = "SessionGUID";
        public const string WEBSITEGUID_FLD = "WebsiteGUID";
        public const string PAGEGUID_FLD = "PageGUID";
        public const string USERID_FLD = "UserID";
        public const string USERNAME_FLD = "Username";
        public const string USERGUID_FLD = "UserGUID";
        public const string LASTACTIVE_FLD = "LastActive";
        public const string IP_FLD = "IP";
        public const string BROWSER_FLD = "Browser";
        public const string PLATFORM_FLD = "Platform";

        private int m_nActiveSessionID;
        private string m_sSessionGUID;
        private string m_sWebsiteGUID;
        private string m_sPageGUID;
        private int m_nUserID;
        private string m_sUsername;
        private string m_sUserGUID;
        private DateTime m_dtLastActive;
        private string m_sIP;
        private string m_sBrowser;
        private string m_sPlatform;

        public ActiveSessionDTO()
        {
        }

        [PersistenceProperty("ActiveSessionID", true, true)]
        public int ActiveSessionID
        {
            get
            {
                return m_nActiveSessionID;
            }
            set
            {
                m_htIsNull["ActiveSessionID"] = false;
                m_nActiveSessionID = value;
            }
        }

        [PersistenceProperty("SessionGUID", false, false)]
        public string SessionGUID
        {
            get
            {
                return m_sSessionGUID;
            }
            set
            {
                m_htIsNull["SessionGUID"] = false;
                m_sSessionGUID = value;
            }
        }

        [PersistenceProperty("WebsiteGUID", false, false)]
        public string WebsiteGUID
        {
            get
            {
                return m_sWebsiteGUID;
            }
            set
            {
                m_htIsNull["WebsiteGUID"] = false;
                m_sWebsiteGUID = value;
            }
        }

        [PersistenceProperty("PageGUID", false, false)]
        public string PageGUID
        {
            get
            {
                return m_sPageGUID;
            }
            set
            {
                m_htIsNull["PageGUID"] = false;
                m_sPageGUID = value;
            }
        }

        [PersistenceProperty("UserID", false, false)]
        public int UserID
        {
            get
            {
                return m_nUserID;
            }
            set
            {
                m_htIsNull["UserID"] = false;
                m_nUserID = value;
            }
        }

        [PersistenceProperty("Username", false, false)]
        public string Username
        {
            get
            {
                return m_sUsername;
            }
            set
            {
                m_htIsNull["Username"] = false;
                m_sUsername = value;
            }
        }

        [PersistenceProperty("UserGUID", false, false)]
        public string UserGUID
        {
            get
            {
                return m_sUserGUID;
            }
            set
            {
                m_htIsNull["UserGUID"] = false;
                m_sUserGUID = value;
            }
        }

        [PersistenceProperty("LastActive", false, false)]
        public DateTime LastActive
        {
            get
            {
                return m_dtLastActive;
            }
            set
            {
                m_htIsNull["LastActive"] = false;
                m_dtLastActive = value;
            }
        }

        [PersistenceProperty("IP", false, false)]
        public string IP
        {
            get
            {
                return m_sIP;
            }
            set
            {
                m_htIsNull["IP"] = false;
                m_sIP = value;
            }
        }

        [PersistenceProperty("Browser", false, false)]
        public string Browser
        {
            get
            {
                return m_sBrowser;
            }
            set
            {
                m_htIsNull["Browser"] = false;
                m_sBrowser = value;
            }
        }

        [PersistenceProperty("Platform", false, false)]
        public string Platform
        {
            get
            {
                return m_sPlatform;
            }
            set
            {
                m_htIsNull["Platform"] = false;
                m_sPlatform = value;
            }
        }

        public string IsNullSerializedString
        {
            get
            {
                return GetIsNullSerializedString();
            }
            set
            {
                SetIsNullSerializedString(value);
            }
        }
    }
}
